package com.shelpe.services.tenant.model;

import java.util.ArrayList;
import java.util.List;

public class AuthExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public AuthExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickIsNull() {
            addCriterion("taobao_user_nick is null");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickIsNotNull() {
            addCriterion("taobao_user_nick is not null");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickEqualTo(String value) {
            addCriterion("taobao_user_nick =", value, "taobaoUserNick");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickNotEqualTo(String value) {
            addCriterion("taobao_user_nick <>", value, "taobaoUserNick");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickGreaterThan(String value) {
            addCriterion("taobao_user_nick >", value, "taobaoUserNick");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickGreaterThanOrEqualTo(String value) {
            addCriterion("taobao_user_nick >=", value, "taobaoUserNick");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickLessThan(String value) {
            addCriterion("taobao_user_nick <", value, "taobaoUserNick");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickLessThanOrEqualTo(String value) {
            addCriterion("taobao_user_nick <=", value, "taobaoUserNick");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickLike(String value) {
            addCriterion("taobao_user_nick like", value, "taobaoUserNick");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickNotLike(String value) {
            addCriterion("taobao_user_nick not like", value, "taobaoUserNick");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickIn(List<String> values) {
            addCriterion("taobao_user_nick in", values, "taobaoUserNick");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickNotIn(List<String> values) {
            addCriterion("taobao_user_nick not in", values, "taobaoUserNick");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickBetween(String value1, String value2) {
            addCriterion("taobao_user_nick between", value1, value2, "taobaoUserNick");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserNickNotBetween(String value1, String value2) {
            addCriterion("taobao_user_nick not between", value1, value2, "taobaoUserNick");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserIdIsNull() {
            addCriterion("taobao_user_id is null");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserIdIsNotNull() {
            addCriterion("taobao_user_id is not null");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserIdEqualTo(Long value) {
            addCriterion("taobao_user_id =", value, "taobaoUserId");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserIdNotEqualTo(Long value) {
            addCriterion("taobao_user_id <>", value, "taobaoUserId");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserIdGreaterThan(Long value) {
            addCriterion("taobao_user_id >", value, "taobaoUserId");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserIdGreaterThanOrEqualTo(Long value) {
            addCriterion("taobao_user_id >=", value, "taobaoUserId");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserIdLessThan(Long value) {
            addCriterion("taobao_user_id <", value, "taobaoUserId");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserIdLessThanOrEqualTo(Long value) {
            addCriterion("taobao_user_id <=", value, "taobaoUserId");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserIdIn(List<Long> values) {
            addCriterion("taobao_user_id in", values, "taobaoUserId");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserIdNotIn(List<Long> values) {
            addCriterion("taobao_user_id not in", values, "taobaoUserId");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserIdBetween(Long value1, Long value2) {
            addCriterion("taobao_user_id between", value1, value2, "taobaoUserId");
            return (Criteria) this;
        }

        public Criteria andTaobaoUserIdNotBetween(Long value1, Long value2) {
            addCriterion("taobao_user_id not between", value1, value2, "taobaoUserId");
            return (Criteria) this;
        }

        public Criteria andReExpiresInIsNull() {
            addCriterion("re_expires_in is null");
            return (Criteria) this;
        }

        public Criteria andReExpiresInIsNotNull() {
            addCriterion("re_expires_in is not null");
            return (Criteria) this;
        }

        public Criteria andReExpiresInEqualTo(Integer value) {
            addCriterion("re_expires_in =", value, "reExpiresIn");
            return (Criteria) this;
        }

        public Criteria andReExpiresInNotEqualTo(Integer value) {
            addCriterion("re_expires_in <>", value, "reExpiresIn");
            return (Criteria) this;
        }

        public Criteria andReExpiresInGreaterThan(Integer value) {
            addCriterion("re_expires_in >", value, "reExpiresIn");
            return (Criteria) this;
        }

        public Criteria andReExpiresInGreaterThanOrEqualTo(Integer value) {
            addCriterion("re_expires_in >=", value, "reExpiresIn");
            return (Criteria) this;
        }

        public Criteria andReExpiresInLessThan(Integer value) {
            addCriterion("re_expires_in <", value, "reExpiresIn");
            return (Criteria) this;
        }

        public Criteria andReExpiresInLessThanOrEqualTo(Integer value) {
            addCriterion("re_expires_in <=", value, "reExpiresIn");
            return (Criteria) this;
        }

        public Criteria andReExpiresInIn(List<Integer> values) {
            addCriterion("re_expires_in in", values, "reExpiresIn");
            return (Criteria) this;
        }

        public Criteria andReExpiresInNotIn(List<Integer> values) {
            addCriterion("re_expires_in not in", values, "reExpiresIn");
            return (Criteria) this;
        }

        public Criteria andReExpiresInBetween(Integer value1, Integer value2) {
            addCriterion("re_expires_in between", value1, value2, "reExpiresIn");
            return (Criteria) this;
        }

        public Criteria andReExpiresInNotBetween(Integer value1, Integer value2) {
            addCriterion("re_expires_in not between", value1, value2, "reExpiresIn");
            return (Criteria) this;
        }

        public Criteria andR2ExpiresInIsNull() {
            addCriterion("r2_expires_in is null");
            return (Criteria) this;
        }

        public Criteria andR2ExpiresInIsNotNull() {
            addCriterion("r2_expires_in is not null");
            return (Criteria) this;
        }

        public Criteria andR2ExpiresInEqualTo(Integer value) {
            addCriterion("r2_expires_in =", value, "r2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andR2ExpiresInNotEqualTo(Integer value) {
            addCriterion("r2_expires_in <>", value, "r2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andR2ExpiresInGreaterThan(Integer value) {
            addCriterion("r2_expires_in >", value, "r2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andR2ExpiresInGreaterThanOrEqualTo(Integer value) {
            addCriterion("r2_expires_in >=", value, "r2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andR2ExpiresInLessThan(Integer value) {
            addCriterion("r2_expires_in <", value, "r2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andR2ExpiresInLessThanOrEqualTo(Integer value) {
            addCriterion("r2_expires_in <=", value, "r2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andR2ExpiresInIn(List<Integer> values) {
            addCriterion("r2_expires_in in", values, "r2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andR2ExpiresInNotIn(List<Integer> values) {
            addCriterion("r2_expires_in not in", values, "r2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andR2ExpiresInBetween(Integer value1, Integer value2) {
            addCriterion("r2_expires_in between", value1, value2, "r2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andR2ExpiresInNotBetween(Integer value1, Integer value2) {
            addCriterion("r2_expires_in not between", value1, value2, "r2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW1ExpiresInIsNull() {
            addCriterion("w1_expires_in is null");
            return (Criteria) this;
        }

        public Criteria andW1ExpiresInIsNotNull() {
            addCriterion("w1_expires_in is not null");
            return (Criteria) this;
        }

        public Criteria andW1ExpiresInEqualTo(Integer value) {
            addCriterion("w1_expires_in =", value, "w1ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW1ExpiresInNotEqualTo(Integer value) {
            addCriterion("w1_expires_in <>", value, "w1ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW1ExpiresInGreaterThan(Integer value) {
            addCriterion("w1_expires_in >", value, "w1ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW1ExpiresInGreaterThanOrEqualTo(Integer value) {
            addCriterion("w1_expires_in >=", value, "w1ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW1ExpiresInLessThan(Integer value) {
            addCriterion("w1_expires_in <", value, "w1ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW1ExpiresInLessThanOrEqualTo(Integer value) {
            addCriterion("w1_expires_in <=", value, "w1ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW1ExpiresInIn(List<Integer> values) {
            addCriterion("w1_expires_in in", values, "w1ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW1ExpiresInNotIn(List<Integer> values) {
            addCriterion("w1_expires_in not in", values, "w1ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW1ExpiresInBetween(Integer value1, Integer value2) {
            addCriterion("w1_expires_in between", value1, value2, "w1ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW1ExpiresInNotBetween(Integer value1, Integer value2) {
            addCriterion("w1_expires_in not between", value1, value2, "w1ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW2ExpiresInIsNull() {
            addCriterion("w2_expires_in is null");
            return (Criteria) this;
        }

        public Criteria andW2ExpiresInIsNotNull() {
            addCriterion("w2_expires_in is not null");
            return (Criteria) this;
        }

        public Criteria andW2ExpiresInEqualTo(Integer value) {
            addCriterion("w2_expires_in =", value, "w2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW2ExpiresInNotEqualTo(Integer value) {
            addCriterion("w2_expires_in <>", value, "w2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW2ExpiresInGreaterThan(Integer value) {
            addCriterion("w2_expires_in >", value, "w2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW2ExpiresInGreaterThanOrEqualTo(Integer value) {
            addCriterion("w2_expires_in >=", value, "w2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW2ExpiresInLessThan(Integer value) {
            addCriterion("w2_expires_in <", value, "w2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW2ExpiresInLessThanOrEqualTo(Integer value) {
            addCriterion("w2_expires_in <=", value, "w2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW2ExpiresInIn(List<Integer> values) {
            addCriterion("w2_expires_in in", values, "w2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW2ExpiresInNotIn(List<Integer> values) {
            addCriterion("w2_expires_in not in", values, "w2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW2ExpiresInBetween(Integer value1, Integer value2) {
            addCriterion("w2_expires_in between", value1, value2, "w2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andW2ExpiresInNotBetween(Integer value1, Integer value2) {
            addCriterion("w2_expires_in not between", value1, value2, "w2ExpiresIn");
            return (Criteria) this;
        }

        public Criteria andExpiresInIsNull() {
            addCriterion("expires_in is null");
            return (Criteria) this;
        }

        public Criteria andExpiresInIsNotNull() {
            addCriterion("expires_in is not null");
            return (Criteria) this;
        }

        public Criteria andExpiresInEqualTo(Integer value) {
            addCriterion("expires_in =", value, "expiresIn");
            return (Criteria) this;
        }

        public Criteria andExpiresInNotEqualTo(Integer value) {
            addCriterion("expires_in <>", value, "expiresIn");
            return (Criteria) this;
        }

        public Criteria andExpiresInGreaterThan(Integer value) {
            addCriterion("expires_in >", value, "expiresIn");
            return (Criteria) this;
        }

        public Criteria andExpiresInGreaterThanOrEqualTo(Integer value) {
            addCriterion("expires_in >=", value, "expiresIn");
            return (Criteria) this;
        }

        public Criteria andExpiresInLessThan(Integer value) {
            addCriterion("expires_in <", value, "expiresIn");
            return (Criteria) this;
        }

        public Criteria andExpiresInLessThanOrEqualTo(Integer value) {
            addCriterion("expires_in <=", value, "expiresIn");
            return (Criteria) this;
        }

        public Criteria andExpiresInIn(List<Integer> values) {
            addCriterion("expires_in in", values, "expiresIn");
            return (Criteria) this;
        }

        public Criteria andExpiresInNotIn(List<Integer> values) {
            addCriterion("expires_in not in", values, "expiresIn");
            return (Criteria) this;
        }

        public Criteria andExpiresInBetween(Integer value1, Integer value2) {
            addCriterion("expires_in between", value1, value2, "expiresIn");
            return (Criteria) this;
        }

        public Criteria andExpiresInNotBetween(Integer value1, Integer value2) {
            addCriterion("expires_in not between", value1, value2, "expiresIn");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenIsNull() {
            addCriterion("refresh_token is null");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenIsNotNull() {
            addCriterion("refresh_token is not null");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenEqualTo(String value) {
            addCriterion("refresh_token =", value, "refreshToken");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenNotEqualTo(String value) {
            addCriterion("refresh_token <>", value, "refreshToken");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenGreaterThan(String value) {
            addCriterion("refresh_token >", value, "refreshToken");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenGreaterThanOrEqualTo(String value) {
            addCriterion("refresh_token >=", value, "refreshToken");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenLessThan(String value) {
            addCriterion("refresh_token <", value, "refreshToken");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenLessThanOrEqualTo(String value) {
            addCriterion("refresh_token <=", value, "refreshToken");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenLike(String value) {
            addCriterion("refresh_token like", value, "refreshToken");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenNotLike(String value) {
            addCriterion("refresh_token not like", value, "refreshToken");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenIn(List<String> values) {
            addCriterion("refresh_token in", values, "refreshToken");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenNotIn(List<String> values) {
            addCriterion("refresh_token not in", values, "refreshToken");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenBetween(String value1, String value2) {
            addCriterion("refresh_token between", value1, value2, "refreshToken");
            return (Criteria) this;
        }

        public Criteria andRefreshTokenNotBetween(String value1, String value2) {
            addCriterion("refresh_token not between", value1, value2, "refreshToken");
            return (Criteria) this;
        }

        public Criteria andAccessTokenIsNull() {
            addCriterion("access_token is null");
            return (Criteria) this;
        }

        public Criteria andAccessTokenIsNotNull() {
            addCriterion("access_token is not null");
            return (Criteria) this;
        }

        public Criteria andAccessTokenEqualTo(String value) {
            addCriterion("access_token =", value, "accessToken");
            return (Criteria) this;
        }

        public Criteria andAccessTokenNotEqualTo(String value) {
            addCriterion("access_token <>", value, "accessToken");
            return (Criteria) this;
        }

        public Criteria andAccessTokenGreaterThan(String value) {
            addCriterion("access_token >", value, "accessToken");
            return (Criteria) this;
        }

        public Criteria andAccessTokenGreaterThanOrEqualTo(String value) {
            addCriterion("access_token >=", value, "accessToken");
            return (Criteria) this;
        }

        public Criteria andAccessTokenLessThan(String value) {
            addCriterion("access_token <", value, "accessToken");
            return (Criteria) this;
        }

        public Criteria andAccessTokenLessThanOrEqualTo(String value) {
            addCriterion("access_token <=", value, "accessToken");
            return (Criteria) this;
        }

        public Criteria andAccessTokenLike(String value) {
            addCriterion("access_token like", value, "accessToken");
            return (Criteria) this;
        }

        public Criteria andAccessTokenNotLike(String value) {
            addCriterion("access_token not like", value, "accessToken");
            return (Criteria) this;
        }

        public Criteria andAccessTokenIn(List<String> values) {
            addCriterion("access_token in", values, "accessToken");
            return (Criteria) this;
        }

        public Criteria andAccessTokenNotIn(List<String> values) {
            addCriterion("access_token not in", values, "accessToken");
            return (Criteria) this;
        }

        public Criteria andAccessTokenBetween(String value1, String value2) {
            addCriterion("access_token between", value1, value2, "accessToken");
            return (Criteria) this;
        }

        public Criteria andAccessTokenNotBetween(String value1, String value2) {
            addCriterion("access_token not between", value1, value2, "accessToken");
            return (Criteria) this;
        }

        public Criteria andOauthTimeIsNull() {
            addCriterion("oauth_time is null");
            return (Criteria) this;
        }

        public Criteria andOauthTimeIsNotNull() {
            addCriterion("oauth_time is not null");
            return (Criteria) this;
        }

        public Criteria andOauthTimeEqualTo(Integer value) {
            addCriterion("oauth_time =", value, "oauthTime");
            return (Criteria) this;
        }

        public Criteria andOauthTimeNotEqualTo(Integer value) {
            addCriterion("oauth_time <>", value, "oauthTime");
            return (Criteria) this;
        }

        public Criteria andOauthTimeGreaterThan(Integer value) {
            addCriterion("oauth_time >", value, "oauthTime");
            return (Criteria) this;
        }

        public Criteria andOauthTimeGreaterThanOrEqualTo(Integer value) {
            addCriterion("oauth_time >=", value, "oauthTime");
            return (Criteria) this;
        }

        public Criteria andOauthTimeLessThan(Integer value) {
            addCriterion("oauth_time <", value, "oauthTime");
            return (Criteria) this;
        }

        public Criteria andOauthTimeLessThanOrEqualTo(Integer value) {
            addCriterion("oauth_time <=", value, "oauthTime");
            return (Criteria) this;
        }

        public Criteria andOauthTimeIn(List<Integer> values) {
            addCriterion("oauth_time in", values, "oauthTime");
            return (Criteria) this;
        }

        public Criteria andOauthTimeNotIn(List<Integer> values) {
            addCriterion("oauth_time not in", values, "oauthTime");
            return (Criteria) this;
        }

        public Criteria andOauthTimeBetween(Integer value1, Integer value2) {
            addCriterion("oauth_time between", value1, value2, "oauthTime");
            return (Criteria) this;
        }

        public Criteria andOauthTimeNotBetween(Integer value1, Integer value2) {
            addCriterion("oauth_time not between", value1, value2, "oauthTime");
            return (Criteria) this;
        }

        public Criteria andR2expiresInIsNull() {
            addCriterion("r2expires_in is null");
            return (Criteria) this;
        }

        public Criteria andR2expiresInIsNotNull() {
            addCriterion("r2expires_in is not null");
            return (Criteria) this;
        }

        public Criteria andR2expiresInEqualTo(String value) {
            addCriterion("r2expires_in =", value, "r2expiresIn");
            return (Criteria) this;
        }

        public Criteria andR2expiresInNotEqualTo(String value) {
            addCriterion("r2expires_in <>", value, "r2expiresIn");
            return (Criteria) this;
        }

        public Criteria andR2expiresInGreaterThan(String value) {
            addCriterion("r2expires_in >", value, "r2expiresIn");
            return (Criteria) this;
        }

        public Criteria andR2expiresInGreaterThanOrEqualTo(String value) {
            addCriterion("r2expires_in >=", value, "r2expiresIn");
            return (Criteria) this;
        }

        public Criteria andR2expiresInLessThan(String value) {
            addCriterion("r2expires_in <", value, "r2expiresIn");
            return (Criteria) this;
        }

        public Criteria andR2expiresInLessThanOrEqualTo(String value) {
            addCriterion("r2expires_in <=", value, "r2expiresIn");
            return (Criteria) this;
        }

        public Criteria andR2expiresInLike(String value) {
            addCriterion("r2expires_in like", value, "r2expiresIn");
            return (Criteria) this;
        }

        public Criteria andR2expiresInNotLike(String value) {
            addCriterion("r2expires_in not like", value, "r2expiresIn");
            return (Criteria) this;
        }

        public Criteria andR2expiresInIn(List<String> values) {
            addCriterion("r2expires_in in", values, "r2expiresIn");
            return (Criteria) this;
        }

        public Criteria andR2expiresInNotIn(List<String> values) {
            addCriterion("r2expires_in not in", values, "r2expiresIn");
            return (Criteria) this;
        }

        public Criteria andR2expiresInBetween(String value1, String value2) {
            addCriterion("r2expires_in between", value1, value2, "r2expiresIn");
            return (Criteria) this;
        }

        public Criteria andR2expiresInNotBetween(String value1, String value2) {
            addCriterion("r2expires_in not between", value1, value2, "r2expiresIn");
            return (Criteria) this;
        }

        public Criteria andW1expiresInIsNull() {
            addCriterion("w1expires_in is null");
            return (Criteria) this;
        }

        public Criteria andW1expiresInIsNotNull() {
            addCriterion("w1expires_in is not null");
            return (Criteria) this;
        }

        public Criteria andW1expiresInEqualTo(String value) {
            addCriterion("w1expires_in =", value, "w1expiresIn");
            return (Criteria) this;
        }

        public Criteria andW1expiresInNotEqualTo(String value) {
            addCriterion("w1expires_in <>", value, "w1expiresIn");
            return (Criteria) this;
        }

        public Criteria andW1expiresInGreaterThan(String value) {
            addCriterion("w1expires_in >", value, "w1expiresIn");
            return (Criteria) this;
        }

        public Criteria andW1expiresInGreaterThanOrEqualTo(String value) {
            addCriterion("w1expires_in >=", value, "w1expiresIn");
            return (Criteria) this;
        }

        public Criteria andW1expiresInLessThan(String value) {
            addCriterion("w1expires_in <", value, "w1expiresIn");
            return (Criteria) this;
        }

        public Criteria andW1expiresInLessThanOrEqualTo(String value) {
            addCriterion("w1expires_in <=", value, "w1expiresIn");
            return (Criteria) this;
        }

        public Criteria andW1expiresInLike(String value) {
            addCriterion("w1expires_in like", value, "w1expiresIn");
            return (Criteria) this;
        }

        public Criteria andW1expiresInNotLike(String value) {
            addCriterion("w1expires_in not like", value, "w1expiresIn");
            return (Criteria) this;
        }

        public Criteria andW1expiresInIn(List<String> values) {
            addCriterion("w1expires_in in", values, "w1expiresIn");
            return (Criteria) this;
        }

        public Criteria andW1expiresInNotIn(List<String> values) {
            addCriterion("w1expires_in not in", values, "w1expiresIn");
            return (Criteria) this;
        }

        public Criteria andW1expiresInBetween(String value1, String value2) {
            addCriterion("w1expires_in between", value1, value2, "w1expiresIn");
            return (Criteria) this;
        }

        public Criteria andW1expiresInNotBetween(String value1, String value2) {
            addCriterion("w1expires_in not between", value1, value2, "w1expiresIn");
            return (Criteria) this;
        }

        public Criteria andW2expiresInIsNull() {
            addCriterion("w2expires_in is null");
            return (Criteria) this;
        }

        public Criteria andW2expiresInIsNotNull() {
            addCriterion("w2expires_in is not null");
            return (Criteria) this;
        }

        public Criteria andW2expiresInEqualTo(String value) {
            addCriterion("w2expires_in =", value, "w2expiresIn");
            return (Criteria) this;
        }

        public Criteria andW2expiresInNotEqualTo(String value) {
            addCriterion("w2expires_in <>", value, "w2expiresIn");
            return (Criteria) this;
        }

        public Criteria andW2expiresInGreaterThan(String value) {
            addCriterion("w2expires_in >", value, "w2expiresIn");
            return (Criteria) this;
        }

        public Criteria andW2expiresInGreaterThanOrEqualTo(String value) {
            addCriterion("w2expires_in >=", value, "w2expiresIn");
            return (Criteria) this;
        }

        public Criteria andW2expiresInLessThan(String value) {
            addCriterion("w2expires_in <", value, "w2expiresIn");
            return (Criteria) this;
        }

        public Criteria andW2expiresInLessThanOrEqualTo(String value) {
            addCriterion("w2expires_in <=", value, "w2expiresIn");
            return (Criteria) this;
        }

        public Criteria andW2expiresInLike(String value) {
            addCriterion("w2expires_in like", value, "w2expiresIn");
            return (Criteria) this;
        }

        public Criteria andW2expiresInNotLike(String value) {
            addCriterion("w2expires_in not like", value, "w2expiresIn");
            return (Criteria) this;
        }

        public Criteria andW2expiresInIn(List<String> values) {
            addCriterion("w2expires_in in", values, "w2expiresIn");
            return (Criteria) this;
        }

        public Criteria andW2expiresInNotIn(List<String> values) {
            addCriterion("w2expires_in not in", values, "w2expiresIn");
            return (Criteria) this;
        }

        public Criteria andW2expiresInBetween(String value1, String value2) {
            addCriterion("w2expires_in between", value1, value2, "w2expiresIn");
            return (Criteria) this;
        }

        public Criteria andW2expiresInNotBetween(String value1, String value2) {
            addCriterion("w2expires_in not between", value1, value2, "w2expiresIn");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}